package com.iphanta.community.activity.voting.service;

import com.iphanta.community.activity.voting.entity.Ranking;
import com.iphanta.community.activity.voting.entity.TimeRange;
import com.iphanta.community.activity.voting.entity.Vote;

import java.util.List;

/**
 * @author 墨声 E-mail: zehong.hongframe.huang@gmail.com
 * create time: 4/7/22 7:03 PM
 */
public interface VoteService {

    void vote(Vote vote);

    List<Ranking> topN(String activityId, Integer n, Integer... voteType);

    @Deprecated
    List<Ranking> totalRanking(String activityId, Integer... voteType);

    List<Ranking> rangeRanking(String activityId, TimeRange range, Integer... voteType);

    List<Ranking> recentlyRankingTopN(String activityId, Integer recentlyMinutes, Integer n, Integer... voteType);

}
